package site.yunnong.atvris.portal.service;

import site.yunnong.atvris.common.dto.UserUpdateParam;
import site.yunnong.atvris.service.vo.UserEducationVO;
import site.yunnong.atvris.service.vo.UserInfoVO;

import java.util.List;

/**
 * @author zjh
 * @date 2021/7/19 10:11
 */
public interface UserManageService {

    /**
     * 获取当前用户详情信息
     * @return
     */
    UserInfoVO getUserInfo();

    /**
     * 获取用户人口统计学信息
     * @param uuid
     * @return
     */
    UserInfoVO queryInfoByUuid(Long uuid);

    void updateAvatar(String fileName);

    /**
     * 更新个人信息
     * @param param
     */
    void updateInfo(UserUpdateParam param);

    /**
     * 昵称是否被他人使用
     * @param nickname
     * @return
     */
    int isNicknameUsedByOthers(String nickname);

    /**
     * 查询教育水平枚举列表
     * @return
     */
    List<UserEducationVO> queryEducationEnumList();
}
